package Controlador;

import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

import Vista.Vista;
import juego.Juego;

public class Ganaste extends JFrame implements ActionListener {
		
	Juego juego;
	Vista vista;
	Integer nivel;
	String nombre;
	int puntaje;
	JButton siguiente;
	
	public Ganaste(Juego juego, Vista vista){		
		this.juego = juego;
		this.vista = vista;
		nivel = (Integer)this.juego.getNivel();
		nombre = this.juego.getJugador().getNombre();
		puntaje = this.juego.getPuntaje();
		setTitle("Terminada la Partida");
		setSize(300,180);
		Insets insets = this.getInsets();		
		if( nivel < 5) {
			JLabel ganaste = new JLabel(
			"<html><div style='text-align: center;'>GANASTE !!!<br>Felicitaciones <br></div></html>");			
			ganaste.setBounds(100+insets.left, 20+insets.top,100, 30);
			this.add(ganaste);		
			siguiente = new JButton("Siguiente nivel");
			siguiente.setBounds(80+insets.left, 70+insets.top, 120, 40);			
			this.add(siguiente);
			siguiente.addActionListener(this);
		} else {			
			JLabel lograste = new JLabel(
			"<html><div style='text-align: center;'>LO LOGRASTE !!!<br><br>Sos un Campeon<br></div></html>");			
			lograste.setBounds(100+insets.left, 40+insets.top,100, 50);
			this.add(lograste);
		}				
		setLayout(null);
		setLocationRelativeTo(null);		
		this.setVisible(true);			
	}
	
	public void actionPerformed(ActionEvent e) {			
			this.setVisible(false);			
			Juego nuevoJuego = Juego.Default(nombre, puntaje, nivel+1);		
			Controlador controlador = new Controlador(nuevoJuego);			
			vista.dispatchEvent(new WindowEvent(vista, WindowEvent.WINDOW_CLOSING));			
			vista = new Vista(controlador, nuevoJuego);	
	}

}


